package com.cjkj.applet.domain.vo;

import lombok.Data;

/**
 * 心电分析数据
 */
@Data
public class EcgAnalysisData {

    /**
     * 信号质量：0-默认状态，1-需重新采集
     */
    private String signalQuality;

    /**
     * R峰数量
     */
    private Integer rpeaksNum;

    /**
     * 心率
     */
    private Integer ecgHeartRate;
    /**
     * 最小心率
     */
    private Integer ecgMinHeartRate;
    /**
     * 最小心率出现时间（格式：h:m:s）
     */
    private String ecgMinHeartRateTime;

    /**
     * 最大心率
     */
    private Integer ecgMaxHeartRate;
    /**
     * 最大心率出现时间（格式：h:m:s）
     */
    private String ecgMaxHeartRateTime;

    /**
     * 停搏检测状态：0-全程无漏搏，1-全程有一个或以上漏搏，可能提示多种潜在的心律失常
     */
    private String ecgArrestStatus;

    /**
     * 最大RR间期（单位：ms）
     */
    private Long ecgRRMax;

    /**
     * PR间期（单位：ms）
     */
    private Long ecgPRInterval;

    /**
     * QRS波群（单位：ms）
     */
    private Long ecgQRSComplex;

    /**
     * P波（单位：ms）
     */
    private Long ecgPDurationt;

    /**
     * 校正后的QT间期（单位：ms）
     */
    private Long ecgQTc;

    /**
     * 正常窦性心搏间期（NN）的标准差（单位：ms）
     */
    private Long HRVSDNN;

    /**
     * 相邻NN间期之差的均方根值（单位：ms）
     */
    private Long HRVRMSSD;

    /**
     * 相邻RR间期差值大于50ms的百分比（单位: %）
     */
    private Integer HRVPNN50;

    /**
     * 压力状态：1-4逐步递增
     * 1: 压力状态极佳！请保持！
     * 2: 压力状态正常，请保持警惕并确保良好的压力管理
     * 3: 压力水平明显，应提高对压力的认识
     * 4: 检测到严重压力水平，请寻求专业支持
     */
    private String stressLevel;

    /**
     * 房颤检测状态
     * -1：该信号有超过10%的心跳被标记为室性早搏，这代表心率失常
     * 1：该信号存在房颤，是一种常见的心律失常，心房不规律颤动，增加血栓、卒中和心力衰竭风险。早期诊断和治疗可以降低并发症的风险。
     * 0：该信号不存在房颤
     */
    private String ecgAFStatus;

    /**
     * 早搏检测状态
     * 0：10%及以下的心跳被标记为PVC
     * 1：10%以上的心跳被标记为PVC，可能提示存在显著的心律失常。
     */
    private String ecgPVCStatus;

    /**
     * 二联律检测状态
     * 0：无
     * 其他数则表示出现二联律的时间（单位为秒）
     */
    private String ecgPVCBigeminyStatus;

    /**
     * 三联律检测状态
     * 0：无
     * 其他数则表示出现三联律的时间（单位为秒）
     */
    private String ecgPVCTrigeminyStatus;

    /**
     * 错误码
     * 11：错误许可证
     * 12：许可证授权方错误
     * 13：许可证授权日期错误
     * 14：许可证到期日期错误
     * 21：存在10个以上的不连续数据点
     * 22：加密验证不通过，数据不来自于CN1XX芯片
     * 31：平均心率小于29bpm
     * 32：数据长度为0，请检查输入
     * 33x：数据小于3秒, 输入数据长度为x
     */
    private String errorStatus;

    /**
     * 最大QT间期（单位：ms）
     */
    private Long maxQT;

    /**
     * 最小QT间期（单位：ms）
     */
    private Long minQT;

    /**
     * 平均QT间期（单位：ms）
     */
    private Long avgQT;

    /**
     * 最大QTc间期（单位：ms）
     */
    private Long maxQTc;

    /**
     * 最小QTc间期（单位：ms）
     */
    private Long minQTc;

    /**
     * 平均QTc间期（单位：ms）
     */
    private Long avgQTc;

    /**
     * QTc离散度（单位：ms）
     */
    private Long qtcd;

    /**
     * 每5分钟时间段内RR间期标准差的平均值（单位：ms）
     * -1表示数据不足
     */
    private Long SDNNIndex;

    /**
     * 分析时间长度（格式：h:m:s）
     */
    private String analysisTime;

    /**
     * 超过2秒的RR间期数量（单位：个）
     */
    private Integer RRIntervalsOver2s;

    /**
     * 最长的RR间期（单位：ms）
     */
    private Long longestRRInterval;

    /**
     * 最长的RR间期出现的时间（格式：h:m:s）
     */
    private String longestRRIntervalTime;

    /**
     * 室早总数（单位：个）
     */
    private Integer PVCTotalCount;

    /**
     * 单发室早数量（孤立出现的室早）
     * 单位：个
     */
    private Integer PVCSingleCount;

    /**
     * 成对室早数量（连续2个室早的组数）
     * 单位：个
     */
    private Integer PVCCoupletCount;

    /**
     * 连续室早数量（连续3个及以上的组数）
     * 单位：个
     */
    private Integer PVCConsecutiveCount;

    /**
     * 二联律模式中的室早总数（单位：个）
     */
    private Integer PVCBigeminyBeats;

    /**
     * 三联律模式中的室早总数（单位：个）
     */
    private Integer PVCTrigeminyBeats;
}
